package com.ruoyi.framework.util;

import java.lang.reflect.ParameterizedType;

/**
 * 描述：泛型类型包装器
 *
 * @author 史彦磊
 * @Date 2019-03-28 10:21
 */
public abstract class TypeWrapper<T> {
    private final java.lang.reflect.Type type;

    protected TypeWrapper() {
        java.lang.reflect.Type superClass = this.getClass().getGenericSuperclass();
        this.type = ((ParameterizedType) superClass).getActualTypeArguments()[0];
    }

    /**
     * 获取泛型参数的实际类型
     *
     * @return
     */
    public java.lang.reflect.Type getType() {
        return this.type;
    }
}
